Communication adapters typically act as an interface between a data processing device and a communication media such as employed in Token Ring and Ethernet for example. Initially these adapters handled only a singe protocol and a single transmission speed. More recently multispeed (4/16 Token Ring and 10/100 Ethernet) adapters have been introduced. The advent of the multispeed adapters has resulted in substantial savings in distribution and support expense, however, additional substantial savings could be realized in manufacturing if programmable adapters with a wide range of speeds were available which used common modular components to achieve the wide range of speeds.
The invention contemplates programmable multispeed communication adapters constructed from common or identical modular components which will also provide degraded performance in the presence of failure in one or more but not all of the common modular components. More specifically, the invention contemplates the use of two or more identical or common Media Access Control (MAC) devices to achieve a range of speeds (n.s) where n is the number of common MAC devices utilized and s is the speed of the identical MAC devices used. A data stream (or user frame of data) from a sending user program is partitioned by a device driver and selectively assigned to the n MAC units. The individual MAC units move assigned data from storage buffers into a multiplexer where it is transmitted over the transmission medium. The device driver inserts unique information in the buffered partitions of the user frame which enables a receiving device driver to reassemble the user frame in its original form for delivery to the destination user.